/**
 * Created by 高子峰 on 2017/8/5.
 */
'use strict';

require('./index.css');
require('page/common/nav/index.js');
require('page/common/header/index.js');
var _mm             = require('util/mm.js');
var _product        = require('service/product-service.js');
var _cart           = require('service/cart-service.js');
var templateIndex   = require('./index.string');

var _user   = require('service/user-service.js');	//自己添加

var page = {
    data : {
        productId      : _mm.getUrlParam('productId') || '',
    },
    init: function () {
        this.onLoad();
        this.bindEvent();
    },
    onLoad : function () {
        //如果没有传productId，自动跳回首页
        if(!this.data.productId){
            _mm.goHome();
        }
        //加载详细信息
        this.loadDetail();
    },
    bindEvent : function () {
        var _this = this;
        // 图片预览
        $(document).on('mouseenter', '.p-img-item', function(){
            var imageUrl   = $(this).find('.p-img').attr('src');    //attr() 方法设置或返回被选元素的属性值。
            $('.main-img').attr('src', imageUrl);
        });
        // count的操作
        $(document).on('click', '.p-count-btn', function(){
            var type        = $(this).hasClass('plus') ? 'plus' : 'minus',
                $pCount     = $('.p-count'),
                currCount   = parseInt($pCount.val()),
                minCount    = 1,
                maxCount    = _this.data.detailInfo.stock || 1;
            if(type === 'plus'){
                $pCount.val(currCount < maxCount ? currCount + 1 : maxCount);
            }
            else if(type === 'minus'){
                $pCount.val(currCount > minCount ? currCount - 1 : minCount);
            }
        });
        // 加入购物车
        $(document).on('click', '.cart-add', function(){
			
			
			//开始
			$.ajax({
            type        : 'POST',
            url         : _mm.getServerUrl('/user/get_user_info.do'),
            dataType    : 'json',
            success     : function(res){
                //请求成功
                if(0===res.status){
                    _cart.addToCart({
					productId   : _this.data.productId,
					count       : $('.p-count').val()
					}, function(res){
						window.location.href = './result.html?type=cart-add';
					}, function(errMsg){
						_mm.errorTips(errMsg);
					});
                }
                //没有登录状态，需要强制登录
                else if(1 === res.status){
					window.location.href='http://localhost:8088/dist/view/user-login.html';
                }
                //请求数据错误
                //else if(1 === res.status){
                    //typeof param.error === 'function' && param.error(res.msg);  //error里面就没有data了
                //}
            },
            error       : function (err) {
               
                //typeof param.error === 'function' && param.error(err.statusText);
            }
        });
			//结束
			
			
            
        });
    },
    //加载商品详情数据
    loadDetail : function(){
        var _this = this,
            html = '',
            $pageWrap = $('.page-wrap');
        //loading
        $pageWrap.html('<div class="loading"></div>');
        //请求detail信息
        _product.getProductDetail(this.data.productId,function(res){
            _this.filter(res);
            // 缓存住detail的数据
            _this.data.detailInfo = res;
            // render
            html = _mm.renderHtml(templateIndex,res);
            $pageWrap.html(html);
        }, function (errMsg) {
            $pageWrap.html('<p class="err-tip">此商品太淘气，找不到了</p>');
        });
    },
    //数据匹配  提取请求中返回的数据
    filter : function(data){
        data.subImages = data.subImages.split(',');
    }
};
$(function () {
    page.init();
})